package com.molin.dao;

public class AISortingDao {
    public int[] toArrayList(String stringArr) {
        String[] arr=stringArr.split(" ");
        int[] arrInt=new int[arr.length];
        for (int i = 0; i < arr.length; i++) {
            arrInt[i]=Integer.parseInt(arr[i]);
        }
        return arrInt;
    }

    public void dubbleSort(int[] arr) {

        //循环次数
        for (int k=0;k<arr.length-1;k++){
            //-k 每次循环后面的数就确定下来了；不需要再去比对。
            for (int i = 0; i < arr.length-1-k; i++) {
                if(arr[i]>arr[i+1]){
                    int tmp=arr[i];
                    arr[i]=arr[i+1];
                    arr[i+1]=tmp;
                }
            }
        }
    }

    public int fetchIndex(int[] arr,int number) {
        //定义查找范围
        int min = 0;
        int max = arr.length - 1;

        //循环查找，条件min<=max
        while (min <= max) {
            //中间位置
            int mid = (min + max) / 2;
            //arr[mid]>number，代表要查找的元素在左边。
            if (arr[mid] > number) {
                max = mid - 1;
            } else if (arr[mid] < number) {
                //arr[mid]<number，代表要查找的元素在右边
                min = mid + 1;
            } else if (arr[mid] == number) {
                //arr[mid]==number
                return mid;
            }
        }
        return -1;
    }
}
